package com.anjbo.service.house;


import java.util.List;
import java.util.Map;

/**
 * Created by Administrator on 2017/3/3.
 */
public interface HouseService {
    /**
     * 添加房产信息
     * @param params
     * @return
     */
     int insertHouse(Map<String, Object> params,Double unitPrice);
    /**
     * 更新房产信息
     * @param params
     * @return
     */
     int updateHouse(Map<String, Object> params);


    /**
     * 查询房产信息详情
     * @param params
     * @return Map
     */
    Map<String,Object> selectHouseDetail(Map<String,Object> params);

    /**
     * 查询房产管理列表
     * @param params
     * @return Map
     */
    List<Map<String,Object>> selectHouseList(Map<String,Object> params);
    /**
     * 查询房屋资产情况(我的资产，增值)
     * @param params
     * @return Map
     *   Map<String,Object> selectHouseAsset(Map<String,Object> params);
     */


    /**
     * 房产管理页面
     * @param params
     * @return
     */
    Map<String,Object> assetManagement(Map<String,Object> params);

    /**
     * 获取房产单价信息
     * @param params
     * @return
     */
    List<Map<String,Object>> getHousePrice(Map<String,Object> params);

    /**
     * 根据参数处理价格方法（单价，总价，增值，租金，可贷金额）
     * @param params
     * @return map (返回所有计算后价格)
     */
    Map<String,Object> computePrice(Map<String,Object> params,Double unitPrice);

    /**
     * 获取房产详情参数集合
     * @param params 房产信息基本参数
     * @return （小区动态成交，在售，房产增值统计图表，小区成交价格统计图表）
     */
    Map<String,Object>getHouseDetailCountMap(Map<String,Object> params);

    /**
     * 获取房产更新后参数信息（买卖税费，学位占用，产权情况）
     * @param param
     * @return
     */
    Map<String,Object> selectHouseUpdateBase(Map<String, Object> param);



    /**
     * 小区动态成交（小区成交数据根据参数查看更多）
     * @return
     */
    List<Map<String,Object>> selectDynamicCellBarginMoreList(Map<String,Object> param);

    /**
     * 小区动态在售（网络报盘根据参数查看更多）
     * @return
     */
    List<Map<String,Object>> selectDynamicCellSaleMoreList(Map<String,Object> param);

    /**
     * 获取房产详情运营后台调用
     * @param id
     * @return
     */
    Map<String,Object> selectHouseDetailById(String id);


    /**
     * 首页获取房产总信息
     * @param params
     * @return
     */
    Map<String,Object> selectHouseAssetByIndex(Map<String,Object> params);

    /**
     * 获取上月单价得到相比上月增值
     * @param params
     * @return
     */
    Double complateAvgLastMouth(Map<String,Object> params);
}

